package ar.uade.fain.ai.tpo.view.producto;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import javax.swing.WindowConstants;

import ar.uade.fain.ai.tpo.Sistema;
import ar.uade.fain.ai.tpo.dto.ProductoDTO;
import ar.uade.fain.ai.tpo.util.DateUtils;


/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit www.cloudgarden.com for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
public class AltaProducto extends javax.swing.JFrame {

	private static final long serialVersionUID = 1L;
	
	private JButton altaProductoButton;
	private JTextField nombre;
	private JLabel fechaHastaLabel;
	private JLabel unidadLabel;
	private JLabel categoriaLabel;
	private JTextField proveedorField;
	private JTextField unidadField;
	private JTextField categoriaField;
	private JLabel fechaDesdeLabel;
	private JTextField fechaHastaText;
	private JLabel proveedorLabel;
	private JTextField fechaDesdeText;
	private JTextField costoText;
	private JLabel labelCosto;
	private JLabel labelNombre;

	/**
	* Auto-generated main method to display this JFrame
	*/
	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				AltaProducto inst = new AltaProducto();
				inst.setLocationRelativeTo(null);
				inst.setVisible(true);
			}
		});
	}
	
	public AltaProducto() {
		super();
		initGUI();
	}
	
	private void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			getContentPane().setLayout(null);
			{
				altaProductoButton = new JButton();
				getContentPane().add(altaProductoButton);
				altaProductoButton.setText("Alta Producto");
				altaProductoButton.setBounds(378, 223, 87, 23);
			
				altaProductoButton.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {
						ProductoDTO pDTO = new ProductoDTO();
						String costo = costoText.getText();
						pDTO.setCosto(costo == null || costo.isEmpty()? null : Double.valueOf(costo));
						String fechaDesde = fechaDesdeText.getText();
						pDTO.setEstacionDesde(fechaDesde == null || fechaDesde.isEmpty() ? null : DateUtils.parse(fechaDesde, DateUtils.FORMAT_DD_MM_AAAA));
						String fechaHasta = fechaHastaText.getText();
						pDTO.setEstacionDesde(fechaHasta == null || fechaHasta.isEmpty() ? null : DateUtils.parse(fechaHasta, DateUtils.FORMAT_DD_MM_AAAA));
						pDTO.setNombre(nombre.getText());
						String categoria = categoriaField.getText();
						pDTO.setIdCategoria(categoria == null || categoria.isEmpty() ? null : Long.parseLong(categoria));
						String proveedor = proveedorField.getText();
						pDTO.setIdProveedor(proveedor == null || proveedor.isEmpty() ? null : Long.parseLong(proveedor));
						String unidad = unidadField.getText();
						pDTO.setIdUnidad(unidad == null || unidad.isEmpty() ? null : Long.parseLong(unidad));
						Sistema.get().getProductoControlador().altaProducto(pDTO);
					}
					
				});
			}
			{
				nombre = new JTextField();
				getContentPane().add(nombre);
				nombre.setBounds(91, 30, 381, 23);
			}
			{
				labelNombre = new JLabel();
				getContentPane().add(labelNombre);
				labelNombre.setText("Nombre:");
				labelNombre.setBounds(12, 33, 47, 16);
			}
			{
				labelCosto = new JLabel();
				getContentPane().add(labelCosto);
				labelCosto.setText("Costo:");
				labelCosto.setBounds(12, 119, 34, 16);
			}
			{
				costoText = new JTextField();
				getContentPane().add(costoText);
				costoText.setBounds(70, 119, 65, 23);
			}
			{
				fechaDesdeText = new JTextField();
				getContentPane().add(fechaDesdeText);
				fechaDesdeText.setBounds(198, 66, 212, 23);
			}
			{
				fechaHastaText = new JTextField();
				getContentPane().add(fechaHastaText);
				fechaHastaText.setBounds(198, 94, 212, 23);
			}
			{
				fechaDesdeLabel = new JLabel();
				getContentPane().add(fechaDesdeLabel);
				fechaDesdeLabel.setText("Fecha inicio de estacion:");
				fechaDesdeLabel.setBounds(17, 69, 151, 16);
			}
			{
				fechaHastaLabel = new JLabel();
				getContentPane().add(fechaHastaLabel);
				fechaHastaLabel.setText("Fecha fin de estacion:");
				fechaHastaLabel.setBounds(12, 97, 134, 16);
			}
			{
				categoriaField = new JTextField();
				getContentPane().add(categoriaField);
				categoriaField.setBounds(198, 148, 217, 23);
			}
			{
				unidadField = new JTextField();
				getContentPane().add(unidadField);
				unidadField.setBounds(198, 183, 83, 21);
			}
			{
				proveedorField = new JTextField();
				getContentPane().add(proveedorField);
				proveedorField.setBounds(198, 223, 162, 23);
			}
			{
				categoriaLabel = new JLabel();
				getContentPane().add(categoriaLabel);
				categoriaLabel.setText("Categoria");
				categoriaLabel.setBounds(17, 151, 61, 16);
			}
			{
				unidadLabel = new JLabel();
				getContentPane().add(unidadLabel);
				unidadLabel.setText("Unidad");
				unidadLabel.setBounds(17, 185, 38, 16);
			}
			{
				proveedorLabel = new JLabel();
				getContentPane().add(proveedorLabel);
				proveedorLabel.setText("Proveedor");
				proveedorLabel.setBounds(17, 226, 54, 16);
			}
			pack();
			this.setSize(500, 300);
		} catch (Exception e) {
		    //add your error handling code here
			e.printStackTrace();
		}
	}

}
